<?php
header('Content-Type:text/html;charset= UTF-8');
$rssfiles = getrss('rss/');
importrss('rss/',$rssfiles);
function getrss($dir)
{
	//先打开要操作的目录，并用一个变量指向它
	//打开当前目录下的目录pic下的子目录common
	$rssfiles = array();
	$handler = opendir($dir);
	//循环的读取目录下的所有文件
	//其中$filename = readdir($handler)是每次循环的时候将读取的文件名赋值给$filename，为了不陷于死循环，所以还要让$filename !== false。一定要用!==，因为如果某个文件名如果叫’0′，或者某些被系统认为是代表false，用!=就会停止循
	while( ($filename = readdir($handler)) !== false )
	{
      if($filename != '.'&& $filename != '..')
      {
		array_push($rssfiles,$filename);
      }
	}
	closedir($handler); 
	return $rssfiles;
}

function importrss($dir,$rssfiles)
{
	$conn=mysql_connect ('localhost', 'zhonghua', 'zhonghua') or die('数据库服务器连接失败：'.mysql_error());
	mysql_select_db('dhrss', $conn) or die('选择数据库失败');
	mysql_query("set names utf8;");

	while (list($key,$value) = each($rssfiles)) 
	{
		$buff = ""; 
		$rssfilepath = $dir.$value;;
		//打开文件地址，并读取，读取失败则中止  
		$fp = fopen($rssfilepath,"r") or die("can not open ".$rssfilepath);   
		while ( !feof($fp) ) 
		{  
			$buff .= fgets($fp,4096);  
		} 		
		//关闭文件打开  
		fclose($fp);
		//建立一个 XML 解析器  
		$parser = xml_parser_create();  
		//xml_parser_set_option -- 为指定 XML 解析进行选项设置  
		xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1);  
		//xml_parse_into_struct -- 将 XML 数据解析到数组$values中  
		xml_parse_into_struct($parser,$buff,$values,$idx);  
		//xml_parser_free -- 释放指定的 XML 解析器  
		xml_parser_free($parser); 

		foreach ($values as $val)
		{  
			$tag = strtolower($val["tag"]);  
			$type = $val["type"];
			if ($tag == "outline" && $type == "complete") 
			{			
				$rssurl = $val["attributes"]["XMLURL"]; 
				$url = $val["attributes"]["HTMLURL"];
				$name = $val["attributes"]["TITLE"];
				$sql="insert into author(name,url,rssurl) values('$name','$url','$rssurl');";
				$result=mysql_query($sql,$conn);
				echo 'insert author info:'.mysql_error().'</br>';	
			} 
		}		
	}
	mysql_close($conn);
}
?>